package nuaa.controller;

import nuaa.domain.Group;
import nuaa.domain.OrdinaryUser;
import nuaa.service.GroupService;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

@Controller
@RequestMapping("/group")
public class GroupController {
    /*获取service层对象*/
    private GroupService groupService=new GroupService();

    public GroupController() throws IOException {
    }

    /**
     * 初步对具体的队伍进行处理
     * @param groupId href中的数据
     * @return
     */
    @RequestMapping(value = "/concreteGroup")
    public String concreteGroup(Integer groupId, HttpServletRequest request){
        /*获取到队伍的id，搜集信息，进行展示*/
        //1.调用service层方法，传入参数，返回结果
        Group group = groupService.findByGroupId(groupId);
        //2.对象放到request域中
        request.setAttribute("group",group);
        //3.查找所有这个队伍的用户，返回一个List
        List<OrdinaryUser> users=groupService.findAllUsers(groupId);
        //4.将users加入request作用域
        request.setAttribute("users",users);
        return "concreteGroup";
    }

    /**
     * 跳转到相应的页面
     * @return
     */
    @RequestMapping("/createGroup")
    public String createGroup(){
        /*暂时不需要布局*/
        return "createGroup";
    }

    @RequestMapping("/finishGroup")
    public String finishGroup(Group group,HttpServletRequest request, HttpServletResponse response) throws IOException {
        /*
        1.从之前的表单中取上数值
        2.调用service方法进行详细处理
        3.跳转回group.jsp页面
         */
        //调用service方法进行详细处理
        groupService.finishGroup(group,request,response);
        //重定向到首页
        return "redirect:/group";
    }
}
